package org.jeecg.modules.zcgl.vo;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecg.common.system.base.entity.IdBaseEntity;
import org.jeecgframework.poi.excel.annotation.Excel;

import java.io.Serializable;
import java.math.BigDecimal;

@Data
public class CollectionInformationVo extends IdBaseEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    private String selections;

    /**合同信息*/
    @Excel(name = "合同信息", width = 15, dictTable = "zcgl_lease_contract_info", dicText = "contract_num", dicCode = "id")
    @Dict(dictTable = "zcgl_lease_contract_info", dicText = "contract_num", dicCode = "id")
    @ApiModelProperty(value = "合同信息")
    private String leaseContractId;

    /**
     * 资产名称
     */
    @Excel(name = "资产名称", width = 15, dictTable = "zcgl_asset_info", dicText = "asset_name", dicCode = "id", pullDown = false)
    @Dict(dictTable = "zcgl_asset_info", dicText = "asset_name", dicCode = "id")
    @ApiModelProperty(value = "资产名称")
    private String assetId;

    /**
     * 资产明细
     */
    @Excel(name = "资产明细", width = 15, dictTable = "zcgl_asset_info_sub", dicText = "room_name", dicCode = "id", pullDown = false)
    @Dict(dictTable = "zcgl_asset_info_sub", dicText = "room_name", dicCode = "id")
    @ApiModelProperty(value = "资产明细")
    private String assetSubIds;

    /**
     * 客户名称
     */
    @Excel(name = "客户名称", width = 15, dictTable = "zcgl_customer_info", dicText = "CONCAT_WS( ';', `name`, phone )", dicCode = "id", pullDown = false)
    @Dict(dictTable = "zcgl_customer_info", dicText = "CONCAT_WS( ' ', `name`, phone )", dicCode = "id")
    @ApiModelProperty(value = "客户名称")
    private String customerId;

    /**合同金额*/
    @Excel(name = "总金额", width = 15)
    @ApiModelProperty(value = "总金额")
    private BigDecimal amountMoney;

    /**款项说明*/
    @Excel(name = "款项说明", width = 15, dicCode = "payment_instructions")
    @Dict(dicCode = "payment_instructions")
    @ApiModelProperty(value = "款项说明")
    private Integer paymentInstructions;


    /**应收金额*/
    @Excel(name = "应收金额", width = 15)
    @ApiModelProperty(value = "应收金额")
    private BigDecimal receivableMoney;

    /**已收金额*/
    @Excel(name = "已收金额", width = 15)
    @ApiModelProperty(value = "已收金额")
    private BigDecimal receivedMoney;

    /**未收金额*/
    @Excel(name = "未收金额", width = 15)
    @ApiModelProperty(value = "未收金额")
    private BigDecimal uncollectedMoney;

    /**预付款*/
    @Excel(name = "预付款", width = 15)
    @ApiModelProperty(value = "预付款")
    private BigDecimal balance;

    /**收费率（%）*/
    @Excel(name = "收费率（%）", width = 15)
    @ApiModelProperty(value = "收费率（%）")
    private BigDecimal rateCharge;

}
